Different embodiments relate in general to devices, systems, and methods for determining the three-dimensional coordinates of one or more locations on the surface of an object.
The capability to measure the coordinate of, or the distance to, points on the surface of an object is generally useful for many applications. Three-dimensional imaging of objects is generally widely used for applications including quality assurance, automation, as-built documentation, reverse engineering, machine vision, gesture recognition, and robotic navigation, for example. While some coordinate measurement applications allow for physical contact with the object under test, many applications may involve measurements to be performed without making physical contact. For such applications, a variety of optical methods have generally been developed for non-contact depth sensing and coordinate measurement.
Broadly, optical methods for distance measurement and coordinate estimation may generally be divided into two categories: monostatic methods, which may measure distance out and back along a single optical propagation path, and triangulation methods, which may utilize the principle of triangulation to obtain distance information.
Generally speaking, distance measurement via triangulation may involve identifying the direction to the point being measurement, specified as an angle, from two fixed points separated by a known distance. This approach may be applied in an imaging configuration using the method of stereo vision, whereby images of an object or scene may be acquired from two points of view. If the cameras may be calibrated such that location within the images may be mapped to angle through the knowledge of the camera, quantitative depth data may be calculated for points within the images that can be identified as correspondences. Correspondences may be points that correspond to the same physical object point within both images, and may include singular points, such as corners, or other identifiable features such as irregular surface texture. For many types of objects and scenes, identifying correspondences may be a significant problem, due to the fact that featureless regions often exist. While methods have generally been developed to propagate depth measurement at correspondences into featureless regions with a level of confidence, the correspondence problem nevertheless may restrict the usefulness of quantitative stereo vision.
A number of active triangulation methods generally have been introduced, whereby one camera in an archetypal stereo vision system may be replaced by a projector of patterned illumination. The illumination pattern may be structured to contain angular information from the perspective of the projector, thus when coupled with a calibrated camera, two angles for triangulation may be acquired. The simplest form of angle-encoded pattern projection may be to project light at only a single angle at a time. This approach may be the basis for depth measurements by laser line scanning. To produce a three-dimensional measurement of a surface scene, a line scanning system may involve a relative motion between the measurement device and the surface. An alternative approach to depth imaging of surfaces may be to utilize wide-field structured light, whereby the patterned illumination may be spread over an extended area. Wide-field methods may be faster than line or point scanning techniques and many may operate without any moving parts.
Many different angle-encoding schemes for wide-field structured illumination have generally been proposed. Some methods may utilize a sequence of patterns, whereby the sequence of optical intensities projected at each angle uniquely may encode the identity of the angle. Examples of such multi-pattern approaches may include temporal phase unwrapping and/or temporal Gray code methods. While multi-pattern methods may produce very accurate and/or high-resolution depth images, the need to project multiple patterns in sequence may mean they are slow and may not generally be suitable for applications that involve measurements of moving objects.
Rapid acquisition of depth images may be enabled by single-pattern structured illumination methods. Single-pattern methods may utilize direct codification, where each angle may be identified by a unique value, or angular information may be encoded within contiguous regions of the pattern, often referred to as spatial neighborhoods. Direct codification, where each angle may be mapped to, for example, a unique intensity or color, may in principal produce high resolution depth images. Direct codification strategies may fail, however, due to variations in reflectivity or coloration of the object under test, which may cause decoding errors. Spatial neighborhood methods may use patterns that vary in one or two dimensions, and may encode angular information using spatial variation of pattern intensity within a region surrounding or adjacent to the angle being encoded. Color method may have a disadvantage in that they are generally limited to neutrally colored objects, as object coloration may interfere with the decoding process. In order to uniquely identify as many angles as possible within the projected pattern, pattern designs may often focus on optimizing the number of unique angles that may be encoded.
There may thus be a need for tools and techniques that may address one or more of these problems and/or for determining the three-dimensional coordinates of one or more locations on the surface of an object.